package com.xjc.business.service;

import com.xjc.business.entity.domain.SysMsg;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xjc.business.entity.po.MsgPo;
import com.xjc.business.entity.vo.PageVo;
import com.xjc.business.entity.vo.MsgVo;
import com.xjc.business.entity.vo.classadmin.ChatMsgContainer;
import com.xjc.system.result.Result;

import java.util.List;

/**
* @author root
* @description 针对表【sys_msg(系统消息表)】的数据库操作Service
* @createDate 2025-01-25 10:24:33
*/
public interface SysMsgService extends IService<SysMsg> {

    /**
     * 获取消息分页
     * @param pageSize  每页条数
     * @param currentPage 当前页码
     * @param readStatus 阅读状态
     * @param type 类型
     * @return 分页数据
     */
    Result<PageVo<MsgVo>> getMsgPage(Integer sendId,Integer pageSize, Integer currentPage, Integer readStatus, Integer type);

    /**
     * 新增消息
     * @param msgPo 消息
     * @return 反馈
     */
    Result<String> addMsg(MsgPo msgPo);

    /**
     * 获取消息分页
     * @param pageSize  每页条数
     * @param currentPage 当前页码
     * @param schoolId 接收方id
     * @param readStatus 阅读状态
     * @param type 类型
     * @return 分页数据
     */
    Result<PageVo<MsgVo>> getMsgPageWithUserId(Integer schoolId, Integer pageSize, Integer currentPage, Integer readStatus, Integer type);

    /**
     * 消息已读
     * @param id 消息id
     * @return 反馈
     */
    Result<String> readMsg(Integer id);


}